﻿using Abp.Domain.Entities.Auditing;
using Abp.Domain.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using AppFramework.DinosaursParkMes.ProductionPlanningModel;

namespace AppFramework.DinosaursParkMes.ProductionPlanningModel
{
    /// <summary>
    /// 生产计划表
    /// </summary>
    public class ProductionPlanning : AuditedEntity<int>, ISoftDelete
    {
        /// <summary>
        /// 计划编号
        /// </summary>
        public string Planningnumber { get; set; }

        /// <summary>
        /// 计划名称
        /// </summary>
        public string Planningname { get; set; }

        /// <summary>
        /// 来源类型
        /// </summary>
        public string Sourcetype { get; set; }

        /// <summary>
        /// 订单编号
        /// </summary>
        public string Ordernumber { get; set; }

        /// <summary>
        /// 成品名称
        /// </summary>
        public string Finishedname { get; set; }

        /// <summary>
        /// 成品编号
        /// </summary>
        public string Finishednumber { get; set; }

        /// <summary>
        /// 规格型号
        /// </summary>
        public string Specificationversion { get; set; }

        /// <summary>
        /// 成品l类型
        /// </summary>
        public string Finishedtype { get; set; }

        /// <summary>
        /// 单位
        /// </summary>
        public string Unit { get; set; }

        /// <summary>
        /// 计划数量
        /// </summary>
        public int? Planningcount { get; set; }

        /// <summary>
        /// 开工时间
        /// </summary>
        public DateTime? Starttime { get; set; }=DateTime.Now;
        /// <summary>
        /// 完工时间-开始时间
        /// </summary>
        public DateTime? Timeofcompletion { get; set; }
        /// <summary>
        /// 需求日期-开始时间
        /// </summary>
        public DateTime? Demanddate { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remark { get; set; }
        /// <summary>
        /// 软删除
        /// </summary>
        public bool IsDeleted { get; set; }
        /// <summary>
        /// BOM编号
        /// </summary>
        public string BOMNumber { get; set; }

        /// <summary>
        /// 生产计划状态
        /// </summary>
        public ProductionPlanState State { get; set; } = ProductionPlanState.UnDecomposed;
    }
}
